using System;
using System.Collections.Generic;
using System.Text;
using Common.Shared.Design;

namespace Common.Shared.Json {
	[JsonObject("jsontype")]
	public class JsonTypeInfo {
		private Type baseType = null;
		public JsonTypeInfo ( Type baseType ) {
			this.baseType = baseType;
		}

		public string Assembly {
			get { return baseType.Assembly.GetName ( ).FullName; }
		}
	
		public string Name {
			get { return baseType.Name; }
		}

		public string FullName {
			get { return baseType.FullName; }
		}

		public Guid Guid {
			get { return baseType.GUID; }
		}

		public string Namespace {
			get { return baseType.Namespace; }
		}

		public string Module {
			get { return baseType.Module != null ? baseType.Module.Name : null; }
		}
	}
}
